/*
 *  GWEffectBase.h
 *  GWGlitch
 *
 *  Created by Michael Forrest on 28/02/2008.
 *  Copyright 2008 Grimaceworks. All rights reserved.
 *
 */

//#include <CoreServices/CoreServices.h>
#include "AUEffectBase.h"
#include "GWGlitchParameters.h"
class GWEffectBase
{
public:
	GWEffectBase(AUKernelBase *inKernel):kernel(inKernel){	
		sampleRate = kernel->GetSampleRate();
	}
	virtual ~GWEffectBase(){}
	virtual void 		Process(const Float32		*inSourceP,
								Float32		*inDestP,  
								UInt32 		inFramesToProcess,  
								UInt32		inNumChannels,  
								bool		&ioSilence); 
	virtual void		Reset(){}
	virtual void		SetBPM(Float64 inBPM){
		bpm = inBPM;
	}
protected:
	AUKernelBase * kernel;
	Float64 bpm;
	Float32 sampleRate;

};

